<?php

/*
  --- PROJECT COFELY 2011, TOTAAL ACTUEEL KEURING --
  @author: Leander Molegraaf
  @category: statistieken
  @name StatTotaalAantalKeuring

  @see StatTotaalActueel (klasse dit dit bestand gebruikt)

  @version 1.2.4
  datum: 26-04-2012

  BESCHRIJVING:
  Deze klasse zorgt voor 1 van de 3 gegevens van de totaalActueel overzicht bovenaan de statistiekenpagina
  WERKING:
  Deze klasse wordt aangeroepen met 2 waardes:
  - het aantal dat er groen/geel/rood is (afhankelijk voor welke gegeven deze klasse is)
  - het totaal aantal

  CHANGELOG:

  1.2.1:
  - calculate functie aangepast zodat hij nu omhoog afrond
  - calculate functie verkort
  - printrow functie verwijderd.
  - comments aangepast
  - functie printresultaat hernoemd naar getKeuringResultaat
  - calculatePercentage geeft niet langer een 'division by zero' als de totaalwaarde 0 is.

  1.2.2:
  - bestandsnamen van de statistiek beginnen allemaal met Stat

  1.2.3:
  - naamgevingen verduidelijkt
  - variabel result verwijderd
  - functie getBerekendePercentage verwijderd, en en calculatePercentage public gemaakt
  - calculatePercentage gebruikt nu de $this-> waardes ipv de waardes uit de argumenten.
  - alle getters/setters geimplementeerd
  - ontwerp geupdate

  1.2.4:
  - documentatie (zowel inline als top) geupdate
 */

class StatTotaalAantalKeuring {

    private $totaal, $aantalVanTotaal; //int

    /**
     * constructor
     * @param int $totaal het totaal aantal gekeurde werkplekinspecties (groen+geel+rood in feite)
     * @param int $aantalVanTotaal het aantal groen/geel/rood, afhankelijk van welk gegeven je wilt.
     * @since Version 1.0
     */

    public function __construct($totaal, $aantalVanTotaal) { //String, int, int
        $this->setAantalVanTotaal($aantalVanTotaal);
        $this->setTotaal($totaal);
    }

    /**
     * berekend het percentage dat aantalVanTotaal is tov het totaal
     * @name calculatePercentage
     * @since Version 1.0
     * @return double $resultaat het resultaat, of 0.
     */
    public function calculatePercentage() { //int, int
        if ($this->totaal > 0) {
            $calc = ($this->aantalVanTotaal / $this->totaal) * 100;
            return(round($calc, 1, PHP_ROUND_HALF_DOWN));
        } else {
            return 0;
        }
    }

    public function getTotaal() {
        return $this->totaal;
    }

    public function setTotaal($totaal) {
        $this->totaal = $totaal;
    }

    public function getAantalVanTotaal() {
        return $this->aantalVanTotaal;
    }

    public function setAantalVanTotaal($aantalVanTotaal) {
        $this->aantalVanTotaal = $aantalVanTotaal;
    }

}

?>